#include <QFile>

#include "../global/QmlNames.h"
#include "../util/Singleton.h"
#include "FileUtil.h"

X_BEGIN_NAMESPACE

FileUtil::FileUtil()
{
}

FileUtil &FileUtil::instance()
{
    return *Singleton<FileUtil>::instance(FileUtil::createInstance);
}

const char *FileUtil::qmlName()
{
    return QmlNames::Utils::FileUtilSingleton;
}

QObject *FileUtil::qmlInstance(QQmlEngine *engine, QJSEngine *scriptEngine)
{
    Q_UNUSED(engine);
    Q_UNUSED(scriptEngine);

    return (QObject*)&instance();
}

/**
 * @brief 检查文件是否存在。使用QFile的实现。
 * @param fileName
 * @return
 */
bool FileUtil::exists(QString fileName)
{
    return QFile::exists(fileName.replace("file://", ""));
}

FileUtil *FileUtil::createInstance()
{
    return new FileUtil();
}

X_END_NAMESPACE
